/**
 * 注意：拦截uni.switchTab本身没有问题。但是在微信小程序端点击tabbar的底层逻辑并不是触发uni.switchTab。所以误认为拦截无效，此类场景的解决方案是在tabbar页面的页面生命周期onShow中处理。
 */
//拦截器 拦截只要是未登录状态，想要跳转到名单内的路径时，直接跳到登录页。

// 页面名单
const checkList = [
	// '/pages/home/home',
	// '/pages/course/course',
	// '/pages/bank/bank',
	// '/pages/my/my',
]
uni.addInterceptor('switchTab', <UniApp.InterceptorOptions>{
	// 非home的tabbar跳转前判断token
	invoke(op: UniApp.RequestOptions) {
		if (true) {
			uni.navigateTo({
				url: '/pages/index/login'
			})
			return false
		} else {
			return true
		}
	},
})

// 基地址
let baseURL = import.meta.env.HY_API_URL
if (import.meta.env.DEV) {
	// #ifdef H5
	if (RegExp(/hongcai365.com/).test(baseURL)) {
		baseURL = '/formalapi'
	} else if (RegExp(/192.168.10.151/).test(baseURL)) {
		baseURL = '/api'
	}
	// #endif
}
uni.addInterceptor('uploadFile', <UniApp.InterceptorOptions>{
	invoke(op: UniApp.RequestOptions) {
		// 1. 非 http 开头需拼接地址
		if (!op.url.startsWith('http')) {
			op.url = baseURL + op.url
		}
		// 2. 请求超时, 默认 60s 设置为60s
		op.timeout = 60000
		// 3. 添加 token 请求头标识
		op.header = {
			...op.header,
		}
		// const token = uni.getStorageSync('user') ? JSON.parse(uni.getStorageSync('user')).token : undefined
		// if (token) {
		// 	op.header.Authorization = token
		// }
		return true
	},
})